As informações são armazenadas de diferentes maneiras, dependendo do tipo de dado que ela representa. Basicamente existem três tipos primitivos de dados: inteiros, real e string.
EXEMPLOS
Encontrar um Ás em um baralho, precisa-se de um baralho (lista de cartas) e, o resultado é uma carta; para calcular a média das provas dos alunos de uma turma, precisa-se da lista de provas dos alunos, e o resultado é um número.
.Existem diferentes linguagens de programação que podem ser usadas para descrever algoritmos em diferentes níveis de abstração, como linguagens visuais, orientadas a objetos, funcionais, entre outras. Uma ou mais linguagens podem ser escolhidas para serem adotadas.
EXEMPLOS
Calcular a média de notas de uma turma em uma dada disciplina e informar se o resultado está acima da média do colégio
É importante que se consiga expressar a solução do problema (algoritmo) em português, compreendendo que o programa é apenas uma descrição deste algoritmo em uma linguagem de programação. O aluno precisa entender que o mais importante é a construção do algoritmo. Notem que a ideia aqui não é apenas descrever as linhas de código em português, mas sim descrever em um alto nível de abstração como o problema é resolvido.
EXEMPLOS
Desenvolver um programa que: (1) "Se o ponteiro do mouse tocar no animal então o animal andará 10 passos, 10 vezes seguidas." (2) "Dada uma pilha de cartas, se a pilha estiver vazia, dizer que não há ás; se a primeira carta for um ás, dizer que há ás na pilha, senão, remover a primeira carta e verificar se há ás no resto da pilha."
Decomposição é uma das principais técnicas de resolução de problemas, onde um problema é dividido em subproblemas, os quais são resolvidos independentemente, e cujas soluções são combinadas para construir a solução do problema original. Algumas vantagens da decomposição são: permitir uma melhor organização e visualização do problema e da solução; facilitar o trabalho em grupo; permitir que possamos reutilizar as soluções dos subproblemas em outros problemas.
EXEMPLOS
Decompor o problema de desenhar imagens em subproblemas de desenhar formas básicas, compondo as subsoluções por meio de operações sobre imagens (sobrepor, posicionar ao lado etc.). Decompor o problema de desenhar uma casa em subproblemas de desenhar polígonos regulares
(retângulos, quadrados, triângulos), compondo essas formas com as operações sobre imagens (rotação, sobreposição etc.).
Definir problemas é uma habilidade muito importante, pois é o primeiro passo da solução. A definição de um problema se dá identificando quais são os tipos de entradas necessárias (insumos/informações) e qual o tipo da saída. Como a solução (algoritmo) deve ser genérica, se define um problema em termos dos tipos das entradas e saída. O objetivo aqui NÃO é propor soluções de problemas, e sim definir o que é necessário para resolvê-los e qual será o resultado esperado.
EXEMPLOS
Encontrar um Ás em um baralho, precisa-se de um baralho (lista de cartas) e, o resultado é uma carta; para calcular a média das provas dos alunos de uma turma, precisa-se da lista de provas dos alunos, e o resultado é um número."
Idealmente, um algoritmo é uma solução genérica: ele resolve várias instâncias de um problema. Por exemplo, um algoritmo que calcula a média aritmética de 2 números resolve este problema para qualquer par de números (que são as instâncias do problema). Para descrever um algoritmo de forma genérica, é necessário dar nomes às entradas do algoritmo. Esses nomes são chamados de variáveis ou parâmetros do algoritmo.
EXEMPLOS
Comparar diferentes instâncias do problema de calcular a área de um retângulo, identificando que o que varia entre elas são as medidas da base e da altura e, por fim, criar um algoritmo para calcular a área de qualquer retângulo."
O processo de transmissão de dados envolve em dividir a informação em pedaços para que ela seja mais facilmente enviada através da rede de comunicação. Esses pedaços são transmitidos através de caminhos compostos por diferentes equipamentos. Finalmente, a informação é remontada no destino. Ao ser dividida, problemas que ocorram na transmissão em alguns pedaços da informação podem ser solucionados pelo reenvio de pedaços faltantes, corrompidos, ou fora de ordem.
EXEMPLOS
Utilizar os alunos como equipamentos de transmissão, passar uma frase em pedaços de papel e orientar alguns deles inicialmente a entregarem sempre seu pedaço de papel e em um segundo momento a não entregar o pedaço. Depois pode ser avaliado como a mensagem chega no destino nestas diferentes condições.
O gerenciamento de dados é frequentemente realizado através do conceito de arquivo. Neste contexto, os arquivos são criados considerando alguma lógica interna e armazenados em memória secundária. Posteriormente, esses arquivos podem ser recarregados a fim de seus dados serem utilizados ou mesmo editados. Finalmente, os arquivos podem ser compactados para diminuir o espaço ocupado na memória secundária.
EXEMPLOS
Utilizar um arquivo físico para simular um sistema de arquivos e realizar ações de manipulações das diversas pastas, realizando analogias com os arquivos.
Nesta habilidade é importante que os alunos possam vivenciar, discutir e refletir sobre o comportamento ao se comunicar em ambiente digital, principalmente na internet mas não limitada a ela(por exemplo também em aplicativos de conversa).
EXEMPLOS
Identificando e refletindo sobre conduta on-line, por exemplo, propondo regras de conduta que colaborem para o debate de questões éticas em evidência.
Importante nesta habilidade considerar a reflexão sobre as perspectivas do ser humano e o consumo de tecnologia, como quando compramos novos celulares em substituição a aparelhos mais antigos, ou uma televisão, dentre outros, ou seja, nossos hábitos. Quantos recursos são necessários para se produzir uma tecnologia?
EXEMPLOS
Refletindo e discutindo sobre sustentabilidade e tecnologia, por exemplo, identificando formas de economizar energia e outros recursos, como desligando os dispositivos ou deixando-os em modo de economia de energia.